-- @owner: @l1azzzy
-- @date: 2024/10/9
-- @testpoint: union作为对象名测试，部分测试点合理报错

--prestep1:切换B库;expect:执行成功
@conn PrimaryDbBmode;

--step1:作为列名;expect:合理报错
drop table if exists t_union_0023;
create table t_union_0023(union int);
--step2:作为索引名;expect:合理报错
drop table if exists t_union_0023;
create table t_union_0023(c1 int);
create index union on t_union_0023(c1);
--step3:作为表名;expect:合理报错
create table union(a int);
--step4:作为数据库名;expect:合理报错
create database union;
--step5:作为外部数据源名 expect:合理报错
create data source union;
--step6:作为自定义函数名 expect:合理报错
create or replace function union(c1 int) returns int as
            $$
            begin
            return c1;
            end;
            $$language plpgsql;
/
--step7:作为存储过程名 expect:合理报错
CREATE OR REPLACE PROCEDURE union(P1 IN int) AS
            BEGIN
            insert into t_union_0023 values ('1');
            raise info '测试union作为存储过程名';
            END;
/
--step8:作为角色名;expect:合理报错
create role union with password 'gauss@123' valid until '2001-12-12';
--step9:作为用户组名；expect:合理报错
create group union with password 'gauss@123';
--step10:作为模式名;expect:合理报错
create schema union;
--step11:作为序列名;expect:成功
create sequence public.union start 100 cache 50;
--step12:作为用户名;expect:合理报错
CREATE USER union PASSWORD 'Bigdata@123';
--step13:清理环境 expect:成功
drop table if exists t_union_0023;
reset dolphin.sql_mode;
drop sequence if exists public.union;